<?php


namespace App\Services\ClassEr;

use App\Models\ClassEr\ClassInfo;

class ClassServices
{
    /**
     * 班级列表
     *
     *
     *
     * @return false|array
     */
    public function getList()
    {

        try {
            $list = ClassInfo::query()->select(['id','name'])
                ->with('student')
                ->orderBy('id', 'desc')
                ->get();
            if (!empty($list)){
                $list = $list->toArray();
            }
            return $list;
        } catch (\Exception $e) {
            return false;
        }

    }

    /**
     * 班级新增
     *@param array $input
     * @return bool
     */
    public function add(array $input):bool
    {

        try {
            $class = new ClassInfo();
            $class->name = $input['name'];
            $class->save();
        } catch (\Exception $e) {
            return false;
        }
        return true;

    }

    /**
     * 班级编辑
     *@param array $input
     * @return bool
     */
    public function edit(array $input):bool
    {

        try {
            ClassInfo::query()
                ->where('id', $input['id'])
                ->update(['name' => $input['name']]);
        } catch (\Exception $e) {
            return false;
        }
        return true;

    }

    /**
     * 班级删除
     *@param array $input
     * @return bool
     */
    public function del(array $input):bool
    {

        try {
            $list = ClassInfo::query()
                ->where('id', $input['id'])
                ->with('student')
                ->first(['id']);
            if (empty($list)||$list['student']!=null){
                return false;
            }

            ClassInfo::query()
                ->where('id', $input['id'])
                ->delete();
        } catch (\Exception $e) {
            return false;
        }
        return true;

    }

}
